4 class Item
implements Comparable
<Item
>{
7 Item(int destino
, int peso
){
9 this.destino
= destino
;
12 * Implementamos toda la javazofia.
14 public int compareTo(Item otro
){
15 // Return < 0 si this < otro
16 // Return 0 si this == otro
17 // Return > 0 si this > otro
18 return peso
- otro
.peso
; /* Un nodo es menor que otro si tiene menos peso */
20 public boolean equals(Object otro
){
21 if (otro
instanceof Item
){
22 Item ese
= (Item
)otro
;
23 return destino
== ese
.destino
&& peso
== ese
.peso
;
27 public String
toString(){
28 return "peso = " + peso
+ ", destino = " + destino
;
33 public static void main(String
[] args
) {
34 PriorityQueue
<Item
> q
= new PriorityQueue
<Item
>();
35 q
.add(new Item(12, 0));
36 q
.add(new Item(4, 1876));
37 q
.add(new Item(13, 0));
38 q
.add(new Item(8, 0));
39 q
.add(new Item(7, 3));
41 System
.out
.println(q
.poll());